package model

import "go-devops/dao"

type NodeImage struct {
	Id          int64  `json:"id" gorm:"primaryKey"`
	NodeType    string `json:"type" gorm:"column:type"`
	DockerImage string `json:"dockerImage"`
	CreateTime  string `json:"createTime"`
}

func (NodeImage) TableName() string {
	return "node_image"
}

func QueryNodeImageList(nodeType string) (list []*NodeImage, err error) {
	if len(nodeType) <= 0 {
		err = dao.DB.Find(&list).Error
	} else {
		err = dao.DB.Where("type = ?", nodeType).Find(&list).Error
	}
	return list, err
}

func QueryNodeImageCount(nodeType string, dockerImage string) (count int64, err error) {
	err = dao.DB.Model(&NodeImage{}).Where("type = ? and docker_image = ?", nodeType, dockerImage).Count(&count).Error
	return count, err
}

func AddNodeImage(nodeImage *NodeImage) (err error) {
	return dao.DB.Create(&nodeImage).Error
}
